package vo

import (
	"time"
)

type ProductVO struct {
	ProdId     uint    `json:"prodId"`     //商品ID
	ProdName   string  `json:"prodName"`   //商品名称
	OriPrice   float64 `json:"oriPrice"`   //原价
	Price      float64 `json:"price"`      //现价
	Brief      string  `json:"brief"`      //简要描述,卖点等
	Content    string  `json:"content"`    //详细描述
	Imgs       string  `json:"imgs"`       //商品图片
	Status     int     `json:"status"`     //状态
	CategoryId string  `json:"categoryId"` //类目ID
	//SoldNum            uint      `json:"soldNum"`            //已经销售数量
	TotalStocks        uint      `json:"totalStocks"`        //库存量
	DeliveryMode       string    `json:"deliveryMode"`       //配送方式id已逗号分割
	DeliveryTemplateId uint      `json:"deliveryTemplateId"` //运费模板id
	SkuTags            string    `json:"skuTags"`            //商品规格                                      //商品规格
	CreatedAt          time.Time `json:"-"`
	UpdatedAt          time.Time `json:"-"`
	TagList            []uint    `json:"tagList"` //分组标签列表 逗号分割
	SkuList            []*SkuVO  `json:"skuList"`
}

type SkuVO struct {
	SkuId        uint      `gorm:"primary_key" json:"skuId"`                                           //单品ID
	Properties   string    `gorm:"type:varchar(2000)" json:"properties"`                               //销售属性组合字符串,格式是p1:v1;p2:v2
	OriPrice     float64   `gorm:"type:decimal(15,2)" json:"oriPrice"`                                 //原价
	Price        float64   `gorm:"type:decimal(15,2)" json:"price"`                                    //价格
	Stocks       uint      `gorm:"type:int(11);not null;" json:"stocks"`                               //商品在付款减库存的状态下，该sku上未付款的订单数量                                                           //库存
	ActualStocks uint      `gorm:"type:int(11)" json:"actualStocks"`                                   //实际库存
	PartyCode    string    `gorm:"type:varchar(100)" json:"partyCode"`                                 //商家编码
	ModelId      string    `gorm:"type:varchar(100)" json:"modelId"`                                   //商品条形码
	Imgs         string    `gorm:"type:varchar(1000)" json:"imgs"`                                     //商品图片
	ProdName     string    `gorm:"type:varchar(255)" json:"prodName"`                                  //商品名称
	SkuName      string    `gorm:"type:varchar(120)" json:"skuName"`                                   //sku名称
	Weight       float64   `json:"weight"`                                                             //重量
	Volume       float64   `json:"volume"`                                                             //体积
	Status       int       `gorm:"type:tinyint;not null;comment:状态 2 启用 1 禁用;default:1" json:"status"` //状态  2 启用 1 禁用
	CreatedAt    time.Time `gorm:"comment:记录时间" json:"-"`                                              //记录时间
	UpdatedAt    time.Time `gorm:"comment:修改时间" json:"-"`                                              //修改时间
}
